# Uncomment the next two lines for pre-release testing
#source 'sso://cpdc-internal/firebase'
#source 'https://github.com/CocoaPods/Specs.git'

use_frameworks!

pod 'FirebaseAnalyticsInterop', :path => '../'
pod 'FirebaseAuthInterop', :path => '../'
pod 'FirebaseCore', :path => '../'
pod 'GoogleUtilities', :path => '../'

target 'Core_Example_iOS' do
  platform :ios, '8.0'

  # The next line is the forcing function for the Firebase pod. The Firebase
  # version's subspecs should depend on the component versions in their
  # corresponding podspec's.
  pod 'Firebase/CoreOnly', '5.12.0'

  target 'Core_Tests_iOS' do
    inherit! :search_paths
    pod 'OCMock'
  end
end

target 'Auth_Example_iOS' do
  platform :ios, '8.0'

  pod 'FirebaseAuth', :path => '../'

  target 'Auth_Tests_iOS' do
    inherit! :search_paths
    pod 'OCMock'
  end
end

target 'Database_Example_iOS' do
  platform :ios, '8.0'

  pod 'FirebaseDatabase', :path => '../'

  target 'Database_Tests_iOS' do
    inherit! :search_paths
  end

  target 'Database_IntegrationTests_iOS' do
    inherit! :search_paths
  end
end

target 'DynamicLinks_Example_iOS' do
  platform :ios, '8.0'

  pod 'FirebaseDynamicLinks', :path => '../'

  target 'DynamicLinks_Tests_iOS' do
    inherit! :search_paths
    pod 'OCMock'
    pod 'GoogleUtilities/MethodSwizzler', :path => '../'
    pod 'GoogleUtilities/SwizzlerTestHelpers', :path => '../'

    # Set define to turn on the unswizzler for the unit tests
    post_install do |installer_representation|
      installer_representation.pods_project.targets.each do |target|
          target.build_configurations.each do |config|
              if config.name != 'Release'
                  config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)', 'GUL_UNSWIZZLING_ENABLED=1']
              end
          end
      end
    end
  end
end

target 'FDLBuilderTestAppObjC' do
  platform :ios, '8.0'

  pod 'FirebaseDynamicLinks', :path => '../'

  target 'FDLBuilderTestAppObjCEarlGrey' do
    inherit! :search_paths
    pod 'EarlGrey'
  end
end

target 'Messaging_Example_iOS' do
  platform :ios, '8.0'

  pod 'FirebaseMessaging' , :path => '../'

  target 'Messaging_Tests_iOS' do
    inherit! :search_paths
    pod 'OCMock'
  end
end

target 'Messaging_Sample_iOS' do
  platform :ios, '8.0'
  pod 'FirebaseMessaging' , :path => '../'
end

target 'Storage_Example_iOS' do
  platform :ios, '8.0'

  pod 'FirebaseStorage', :path => '../'

  target 'Storage_Tests_iOS' do
    inherit! :search_paths
    pod 'OCMock'
  end

  target 'Storage_IntegrationTests_iOS' do
    inherit! :search_paths
  end
end

target 'Auth_Sample' do
  platform :ios, '8.0'
  pod 'FirebaseAuth', :path => '../'
  pod 'FirebaseCore', :path => '../'
  pod 'FBSDKLoginKit'
  pod 'GoogleSignIn'
  pod 'FirebaseInstanceID'
  pod 'GTMSessionFetcher/Core'

  target 'Auth_ApiTests' do
    inherit! :search_paths
  end

  target 'Auth_EarlGreyTests' do
    inherit! :search_paths
    pod 'EarlGrey'
  end
end

target 'Auth_SwiftSample' do
  platform :ios, '8.0'
  pod 'FirebaseAuth', :path => '../'
  pod 'FirebaseCore', :path => '../'
  pod 'GoogleSignIn'
  pod 'FirebaseInstanceID'
end

target 'Core_Example_macOS' do
  platform :osx, '10.10'

  pod 'FirebaseCore', :path => '../'

  target 'Core_Tests_macOS' do
    inherit! :search_paths
    pod 'OCMock'
  end
end

target 'Auth_Example_macOS' do
  platform :osx, '10.10'

  pod 'FirebaseAuth', :path => '../'

  target 'Auth_Tests_macOS' do
    inherit! :search_paths
    pod 'OCMock'
  end
end

target 'Database_Example_macOS' do
  platform :osx, '10.10'

  pod 'FirebaseDatabase', :path => '../'

  target 'Database_Tests_macOS' do
    inherit! :search_paths
  end

  target 'Database_IntegrationTests_macOS' do
    inherit! :search_paths
  end
end

target 'Storage_Example_macOS' do
  platform :osx, '10.10'

  pod 'FirebaseStorage', :path => '../'

  target 'Storage_Tests_macOS' do
    inherit! :search_paths
    pod 'OCMock'
  end

  target 'Storage_IntegrationTests_macOS' do
    inherit! :search_paths
  end
end

target 'Core_Example_tvOS' do
  platform :tvos, '10.0'

  target 'Core_Tests_tvOS' do
    inherit! :search_paths
    pod 'OCMock'
  end
end

target 'Auth_Example_tvOS' do
  platform :tvos, '10.0'

  pod 'FirebaseAuth', :path => '../'

  target 'Auth_Tests_tvOS' do
    inherit! :search_paths
    pod 'OCMock'
  end
end

target 'Database_Example_tvOS' do
  platform :tvos, '10.0'

  pod 'FirebaseDatabase', :path => '../'

  target 'Database_Tests_tvOS' do
    inherit! :search_paths
  end

# TODO
# target 'Database_IntegrationTests_tvOS' do
#    inherit! :search_paths
#  end
end

target 'Storage_Example_tvOS' do
  platform :tvos, '10.0'

  pod 'FirebaseStorage', :path => '../'

  target 'Storage_Tests_tvOS' do
    inherit! :search_paths
    pod 'OCMock'
  end

#TODO Storage_IntegrationTests_tvOS
#  target 'Storage_IntegrationTests_tvOS' do
#    inherit! :search_paths
#  end
end
